﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using Persistente.Postagem;

namespace Negocio.Postagem
{
    public class NTag
    {
        public int idTag;
        public int idPostagem;
        public string teTag;
        public int[] arIdTags;


        public int Salvar(string teTag)
        {
            var obPTag = new PTag();
            return obPTag.Salvar(teTag);
        }

        public bool Remover(int idTag)
        {
            var obPTag = new PTag();
            return obPTag.Remover(idTag);
        }

        public void pegarTagPorId()
        {
            var obPTag = new PTag();
            var obTbTag = obPTag.pegarTagPorId(idTag);
            if (obTbTag != null)
            {
                idTag = obTbTag.id_tag;
                teTag = obTbTag.te_tag;
            }
        }

        public void pegarTagPorTeTag(string teTag)
        {
            var obPTag = new PTag();
            var obTbTag = obPTag.pegarTagPorTeTag(teTag);
            if (obTbTag != null)
            {
                idTag = obTbTag.id_tag;
                teTag = obTbTag.te_tag;
            }
        }

        public bool incluirTags(string teTags, int idPostagem)
        {
            string [] arTeTags = teTags.Split(',');
            //int[] arteste;
            //var arteste = Array.CreateInstance(, 10);
            //Array arteste[0] = 2;

            foreach(string teTag in arTeTags)
            {
                var obNTag    = new NTag();
                obNTag.pegarTagPorTeTag(teTag);
                if (obNTag.idTag == 0)
                {
                    idTag = Salvar(teTag);
                }                                        
                else
                {
                    idTag = obNTag.idTag;
                }
                
                //arIdTags[0] = idTag;
                var obNTagPostagem = new NTagPostagem();
                if (obNTagPostagem.contarTagPostagem(idTag, idPostagem) == 0)
                {
                    obNTagPostagem.idTag = idTag;
                    obNTagPostagem.idPostagem = idPostagem;
                    obNTagPostagem.Salvar();
                }
                
            }

            var obNTagPostagem2 = new NTagPostagem();

            var ds = new DataSet();
            ds = obNTagPostagem2.pegarTagsPostagensPorPostagem(idPostagem);
            for (var i =1; 1<ds.Tables.Count ;i++)
            {
                //obNTagPostagem2 = ds.DefaultViewManager
            }
            return true;
        }
    }
}
